<?php
/**
 * Created by PhpStorm.
 * User: mayn
 * Date: 2018/8/22
 * Time: 10:54
 */

namespace app\api\interfaces;

/**
 * @name 菜单模块
 * @sort 5
 */
interface MenuInterface
{
    /**
     * @name  获取菜单列表
     * @sort 1
     * @post k:appid,v:wx403a8141dca36f45,t:appid,n:
     * @case {"is_menu_open#是否开启菜单(0代表未开启，1代表开启)":"1","button":[{"type": "click","name": "今日歌曲","key": "V1001_TODAY_MUSIC"},{"name": "菜单","sub_button": {"list": [{"type": "view","name": "搜索","url": "http://www.soso.com/"},{"type": "news","name": "news","value":"KQb_w_Tiz-nSdVLoTV35Psmty8hGBulGhEdbb9SKs-o","news_info": {"list": [{"title": "MULTI_NEWS","author": "JIMZHENG","digest": "text","show_cover": 0,"cover_url": "http://mmbiz.qpic.cn/mmbiz/GE7et87vE9vicuCibqXsX9GPPLuEtBfXfK0HKuBIa1A1cypS0uY1wickv70iaY1gf3I1DTszuJoS3lAVLvhTcm9sDA/0","content_url": "http://mp.weixin.qq.com/s?__biz=MjM5ODUwNTM3Ng==&mid=204013432&idx=1&sn=80ce6d9abcb832237bf86c87e50fda15#rd","source_url": ""},{"":""}]}},{"":""}]}}]}
     * @remark <p style="color:red">1、value、url、key等字段说明：对于不同的菜单类型，value的值意义不同。官网上设置的自定义菜单： Text:保存文字到value； Img、voice：保存mediaID到value； Video：保存视频下载链接到value； News：保存图文消息到news_info，同时保存mediaID到value； View：保存链接到url。 使用API设置的自定义菜单： click、scancode_push、scancode_waitmsg、pic_sysphoto、pic_photo_or_album、 pic_weixin、location_select：保存值到key；view：保存链接到url</p><p style="color:red">2、type字段说明：菜单的类型，<span style="color:green">公众平台官网上能够设置的菜单类型</span>有view（跳转网页）、text（返回文本，下同）、img、photo、video、voice。<span style="color:green">使用API设置的则有8种</span>，click：点击推事件用户点击click类型按钮后、view：跳转URL用户点击view类型按钮后、scancode_push：扫码推事件、scancode_waitmsg：扫码推事件且弹出“消息接收中”提示框、pic_sysphoto：弹出系统拍照发图、pic_photo_or_album：弹出拍照或者相册发图、pic_weixin：弹出微信相册发图器、location_select：弹出地理位置选择器</p>3、参考微信开发菜单说明地址：<a href="https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1434698695" target="_blank">微信开发菜单</a></p>
     */
    public  function  actionGet_list();
//    /**
//     * @name  删除菜单
//     * @sort 2
//     * @post k:appid,v:wx403a8141dca36f45,t:appid,n:
//     */
//    public function actionDel_one();
    /**
     * @name  发布菜单
     * @sort 3
     * @post k:appid,v:wx403a8141dca36f45,t:appid,n:
     * @post k:menus,v:{""：""},t:菜单json格式,n:
     * @post-remark-menus {"button#菜单标记":[{"type#菜单类型":"click","name#菜单名称":"今日歌曲","key#根据type区分不同的值":"V1001_TODAY_MUSIC"},{"name#菜单名称":"菜单","sub_button#子菜单集合":[{"type":"view","name":"搜索","url":"http://www.soso.com/"},{"type":"miniprogram","name":"wxa","url":"http://mp.weixin.qq.com","appid":"wx286b93c14bbf93aa","pagepath":"pages/lunar/index"},{"type":"click","name":"赞一下我们","key":"V1001_GOOD"}]}]}
     * @post-remark-othersType {"button": [{"name": "扫码","sub_button": [{"type": "scancode_waitmsg","name": "扫码带提示","key": "rselfmenu_0_0","sub_button": [ ]},{"type": "scancode_push","name": "扫码推事件","key": "rselfmenu_0_1","sub_button": [ ]}]},{"name": "发图","sub_button": [{"type": "pic_sysphoto","name": "系统拍照发图","key": "rselfmenu_1_0","sub_button": [ ]},{"type": "pic_photo_or_album","name": "拍照或者相册发图","key": "rselfmenu_1_1","sub_button": [ ]},{"type": "pic_weixin","name": "微信相册发图","key": "rselfmenu_1_2","sub_button": [ ]}]},{"name": "发送位置","type": "location_select","key": "rselfmenu_2_0"},{"type": "media_id","name": "图片","media_id": "MEDIA_ID1"},{"type": "view_limited","name": "图文消息","media_id": "MEDIA_ID2"}]}
     * @remark <p>自定义菜单接口可实现多种类型按钮:</p><p>1.参数说明：<br>button【一级菜单数组，个数应为1~3个】</br>sub_button【二级菜单数组，个数应为1~5个】</br>type【菜单的响应动作类型，view表示网页类型，click表示点击类型】</br>name【菜单标题，不超过16个字节，子菜单不超过60个字节】</br>key【click等点击类型必须，菜单KEY值，用于消息接口推送，不超过128字节】</br>url【view类型必须，网页 链接，用户点击菜单可打开链接，不超过1024字节】</br>media_id【media_id类型和view_limited类型必须，	调用新增永久素材接口返回的合法media_id】</p><p>2、字段<span style="color:red;">type</span>说明：</br>click：点击推事件用户点击click类型按钮后，微信服务器会通过消息接口推送消息类型为event的结构给开发者</br>view：跳转URL用户点击view类型按钮后，微信客户端将会打开开发者在按钮中填写的网页URL</br>scancode_push：扫码推事件用户点击按钮后，微信客户端将调起扫一扫工具</br>scancode_waitmsg：扫码推事件且弹出“消息接收中”提示框用户点击按钮后，微信客户端将调起扫一扫工具</br>pic_sysphoto：弹出系统拍照发图用户点击按钮后，微信客户端将调起系统相机</br>pic_photo_or_album：弹出拍照或者相册发图用户点击按钮后，微信客户端将弹出选择器供用户选择“拍照”或者“从手机相册选择”</br>pic_weixin：弹出微信相册发图器用户点击按钮后，微信客户端将调起微信相册，完成选择操作后，将选择的相片发送给开发者的服务器</br>location_select：弹出地理位置选择器用户点击按钮后，微信客户端将调起地理位置选择工具，完成选择操作后，将选择的地理位置发送给开发者的服务器</br>media_id：下发消息（除文本消息）用户点击media_id类型按钮后，微信服务器会将开发者填写的永久素材id对应的素材下发给用户</br>view_limited：跳转图文消息URL用户点击view_limited类型按钮后，微信客户端将打开开发者在按钮中填写的永久素材id对应的图文消息URL</p><p>3、参考微信开发菜单说明地址：<a href="https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141013" target="_blank">微信开发菜单说明</a></p>
     */
    public function actionAdd();
}